import axios from 'axios'

// axios的实例对象
// 1.模拟get请求
axios.get('http://123.207.32.32:8000/home/multidata').then((res) => {
  console.log(res)
})
// 2.get请求并传入参数
// axios
//   .get('http://httpbin.org/get', {
//     params: {
//       name: 'xpm',
//       age: 18
//     }
//   })
//   .then((res) => {
//     console.log(res)
//   })

// 3.post请求

// 4.axios的全局配置
axios.defaults.timeout = 10000

// 5.axios.all
axios
  .all([
    axios.get('http://www.baidu.com').then((res) => res),
    axios.post('http://www.baidu.com', { data: { name: 'xpm', age: 18 } })
  ])
  .then((res) => {
    console.log(res[0])
    console.log(res[1])
  })

// Promise本身是可以有类型的
new Promise<string>((resolve) => {
  resolve('sss')
}).then((res) => {
  console.log(res)
})

// 6.axios的拦截器
axios.interceptors.request.use(
  (config) => {
    return config
  },
  (err) => {
    console.log(err)
  }
)
axios.interceptors.response.use(
  (res) => {
    return res
  },
  (err) => {
    console.log(err)
  }
)
